import { createContext } from 'react';
import SoundStore from './SoundStore';

class RootStore {
  soundStore: SoundStore;

  constructor() {
    this.soundStore = new SoundStore();
  }
}

// 创建根store实例
export const rootStore = new RootStore();

// 创建React Context
export const RootStoreContext = createContext<RootStore>(rootStore);

// 导出自定义Hook以便在组件中使用
export const useRootStore = (): RootStore => {
  return rootStore;
};

// 导出各个store的Hook以便直接访问
export const useSoundStore = (): SoundStore => {
  return rootStore.soundStore;
};